/**
 * Description：系统用户管理
 * @author lld
 * @version 1.0
 */
package com.douyu.water.core.service;

import java.util.List;
import java.util.Map;

import com.douyu.water.core.PagePara;
import com.douyu.water.core.model.Menu;
import com.douyu.water.core.model.Role;
import com.douyu.water.core.model.User;

public interface UserService {

	/**
	 * 检索用户列表
	 * @param record User
	 *         -用户
	 * @param page PagePara
	 *        -分页
	 * @return
	 */
	List<User> select(User record,PagePara page);
	
	/**
	 *添加系统用户 
	 * @param record User
	 * @return int
	 */
	int insert(User record);
	
	/**
	 * 修改系统用户
	 * @param record User
	 * @return int
	 */
	int update(User record);
	
	/**
	 * 根据需要修改
	 * @param record User
	 * @return int
	 */
	int updateSelective(User record);
	
	/**
	 * 查看用户
	 * @param record User
	 * @return User
	 */
	User view(User record);
	
	/**
	 * 删除系统用户
	 * @param record User
	 * @return
	 */
	int delete(User record);

	/**
	 * 用户登录
	 * @param user
	 * @return
	 */
	User login(User user);

	/**
	 * 检索用户权限
	 * @param login
	 * @return
	 */
	List<Menu> selectMenu(User login);

	/**
	 * 检测角色是否已经被分配
	 * @param list
	 * @param menu
	 */
	void checkRole(List<Role> list, User menu);
	
}
